/** *******************************************************************
 * Amfphp Redux
 * @author  Jonnie Spratley
 * @see jonniespratley@gmail.com
 * @internal
 ******************************************************************* */
package com.jonniespratley.amfphpredux.events
{
	/**
	 * Cairngorm provides a singleton Cairngorm Event Dispatcher that works with the Front Controller class. 
	 * Whenever you want to dispatch Cairngorm events, you use the Cairngorm Event Dispatcher. 
	 *
	 * The following code shows how to broadcast a Cairngorm event using 
	 * the Cairngorm Event Dispatcher: 
	 *
	 * <code>
	 *	var evt:YourEvent = new YourEvent( YourEvent.NAME_OF_EVENT );
	 *		evt.dispatchEvent();
	 *</code>
	 *
	 * The dispatchEvent() method of the Cairngorm Event Dispatcher singleton takes a parameter of 
	 * type flash.events.Event. This event is dispatched and the corresponding command is executed.
	 *
	 * This is how the Front Controller, Cairngorm Event Dispatcher, Command patterns, and 
	 * Cairngorm Events work together with the Cairngorm Event, the Model Locator, and VO 
	 * patterns to create an immersive experience for the user of an RIA.
	 *
	 */
	import com.adobe.cairngorm.control.CairngormEvent;
	
	import flash.events.Event;
		
	public final class DescribeServicesEvent extends CairngormEvent
	{
		public static const DESCRIBE_SERVICES_EVENT:String = "DESCRIBE_SERVICES_EVENT";

		public var aService:Object;

		public function DescribeServicesEvent( aService:Object )
		{
			super( DESCRIBE_SERVICES_EVENT );
			this.aService = aService;
		}
		
		override public function clone():Event
		{
			return new DescribeServicesEvent( aService );
		}
	}
}